Triple类的一个实例表示LLVM为之生成代码的目标平台。为了支持新架构，第一个任务是扩展Triple类。llvm/include/llvm/TargetParser/Triple.h文件中，添加一个成员到ArchType枚举和一个新谓词:

\begin{cpp}
class Triple {
public:
    enum ArchType {
        // Many more members
        m88k, // M88000 (big endian): m88k
    };

    /// Tests whether the target is M88k.
    bool isM88k() const {
        return getArch() == Triple::m88k;
    }
    // Many more methods
};
\end{cpp}

llvm/lib/TargetParser/Triple.cpp文件中，有许多方法使用ArchType枚举。需要扩展它们;例如，getArchTypeName()方法中，需要添加一个新case:

\begin{cpp}
switch (Kind) {
    // Many more cases
    case m88k: return "m88k";
}
\end{cpp}

若忘记在其中一个函数中处理新的m88k枚举成员，编译器会发出警告。接下来，我们将展开可执行和可链接格式(ELF)。

































